﻿using SportsPlatform.Base;
using SportsPlatform.Dto.SportBusiness.ProjectType;
using SportsPlatform.Query.SportBusiness.ProjectType;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SportsPlatform.SportBusiness.ISportBusiness
{
    /// <summary>
    /// 项目类别服务接口
    /// </summary>
    public interface IProjectTypeService
    {
        /// <summary>
        /// 添加项目类别
        /// </summary>
        /// <param name="addProjectTypeQuery">传入参数</param>
        /// <returns></returns>
        Task<BaseResultDto> AddProjectType(AddProjectTypeQuery addProjectTypeQuery);

        /// <summary>
        /// 获取所有项目类型
        /// </summary>
        /// <returns></returns>
        Task<ResultListDto<ProjectTypeDto>> GetALLType();

        /// <summary>
        /// 更新状态
        /// </summary>
        /// <param name="state">状态</param>
        /// <returns></returns>
        Task<BaseResultDto> SetState(UpdateProjectTypeStateQuery state);


        /// <summary>
        /// 删除状态
        /// </summary>
        /// <param name="deleteProjectTypeQuery">传入参数</param>
        /// <returns></returns>
        Task<BaseResultDto> Delete(DeleteProjectTypeQuery deleteProjectTypeQuery);

        /// <summary>
        /// 客户端分页获取项目类别信息（用于信息同步）
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        Task<PagePagingDto<GetPageProjectTypeKHDDto>> GetPageProjectTypeKHD(BasePageQuery query);
    }
}
